/****************************************************************************
                Университет:    Санкт-Петербургский Политехнический Университет
                Кафедра:        Компьютерные системы и программные технологии
                Аспирант:       Быков Илья Иванович
                Программа:      Расчет коэффициентов распределения
                Модуль:         addnodecommand.cpp
                Назначение:
****************************************************************************/

#include "mainwindow.h"
#include "addnodecommand.h"
#include "node.h"
#include "document.h"

/******************************************************************************
** AddNodeCommand
*/

AddNodeCommand::AddNodeCommand(Document *doc, Node *node, QUndoCommand *parent)
    : Command(AddNodeCommandId, doc,  parent)
    , m_node(node)
{
    m_node->setNumber(document()->freeNodeNumber());
    setText(QString("Добавлен узел № %1").arg(QString::number(m_node->number())));
    MainWindow::instance()->statusBar()->showMessage("Объект добавлен", 5000);
}

void AddNodeCommand::undo()
{    
    document()->removeNode(m_node);
}

void AddNodeCommand::redo()
{
    document()->addNode(m_node);
}
